home *** CD-ROM | disk | FTP | other *** search
/ Language/OS - Multiplatform Resource Library / LANGUAGE OS.iso / t3_1 / sources.lha / sources / sys / aegis_files.t < prev    next >
Text File  |  1988-02-05  |  8KB  |  285 lines

  1. (herald vmfiles)
  2.  
  3. ;;; Copyright (c) 1985 Yale University
  4. ;;;     Authors: N Adams, R Kelsey, D Kranz, J Philbin, J Rees.
  5. ;;; This material was developed by the T Project at the Yale University Computer 
  6. ;;; Science Department.  Permission to copy this software, to redistribute it, 
  7. ;;; and to use it for any purpose is granted, subject to the following restric-
  8. ;;; tions and understandings.
  9. ;;; 1. Any copy made of this software must include this copyright notice in full.
  10. ;;; 2. Users of this software agree to make their best efforts (a) to return
  11. ;;;    to the T Project at Yale any improvements or extensions that they make,
  12. ;;;    so that these may be included in future releases; and (b) to inform
  13. ;;;    the T Project of noteworthy uses of this software.
  14. ;;; 3. All materials developed as a consequence of the use of this software
  15. ;;;    shall duly acknowledge such use, in accordance with the usual standards
  16. ;;;    of acknowledging credit in academic research.
  17. ;;; 4. Yale has made no warrantee or representation that the operation of
  18. ;;;    this software will be error-free, and Yale is under no obligation to
  19. ;;;    provide any services, by way of maintenance, update, or otherwise.
  20. ;;; 5. In conjunction with products arising from the use of this material,
  21. ;;;    there shall be no use of the name of the Yale University nor of any
  22. ;;;    adaptation thereof in any advertising, promotional, or sales literature
  23. ;;;    without prior written consent from Yale in each case.
  24. ;;;
  25.  
  26. (block
  27.   (define *vm-modules*
  28.           '((osys aem68kernel)
  29.             (osys m68kernel)
  30.         (osys m_dispatch)
  31.             (t3_primops mconstants)
  32.             (osys m68lap)
  33.             (t3_primops locations) ;++ talk to RK about this
  34.                                       ; operation needs locations
  35.             (osys vm_boot)
  36.             (osys kernel)
  37.  
  38.             ;; Continuation stuff
  39.             (osys handler)   ; must occur before any DEFINE-HANDLER
  40.             (osys frame)
  41.             (osys throw)
  42.             (osys operation)       ; kernel needs %operation
  43.  
  44.             ;; VM error system
  45.             (osys error)
  46.             (osys aegis_fault)
  47.  
  48.             ;; Primitive procedures
  49.             (osys fixnum)
  50.             (osys list)
  51.             (osys map)        ; uses list
  52.             (osys character)  ; uses list
  53.             (osys string)     ; uses list, character
  54.             (osys vector)     ; uses list 
  55.             (osys symbol)     ; uses string
  56.             (osys struct)     ; uses list
  57.  
  58.             ;; closed compiled primops
  59.             (t3_primops m68primops)
  60.             (t3_primops m68arith)
  61. ;++         (t3_primops locations)  ; setter is closed compiled
  62.             (t3_primops m68low)
  63.             (t3_primops predicates)
  64.             (t3_primops open)
  65.             (t3_primops aliases)
  66.             (t3_primops carcdr)
  67.             (t3_primops genarith)
  68.  
  69.             ;; Storage management
  70.             (osys weak)
  71.             (osys free)
  72.             (osys pool)
  73.             (osys string_buf)
  74.             (osys table)
  75.             (osys table_entry)
  76.             (osys table_util)
  77.             (osys weak_table)
  78.             (osys hash)        ; must come after weak_table
  79.             (osys inf_vector)
  80.  
  81.             ;; VM file system
  82.             (osys buffer)
  83.             (osys port_op)
  84.             (osys ae_vmport)
  85.             (osys vm_port)
  86.  
  87.             ;; VM system
  88.             (osys environment)  ; must preceed any DEFINE-SYNTAX
  89.             (osys vm_system)))
  90.  
  91.   ;;; Closed compiled versions of primops.  In a system which doesn't
  92.   ;;; contain an interpreter these files are not necessary.
  93.  
  94.   (define *closed-compiled-primops*
  95.           '((t3_primops m68constants)
  96.             (t3_primops m68primops)
  97.             (t3_primops m68arith)
  98. ;++            (t3_primops locations)  ; setter is closed compiled
  99.             (t3_primops m68low)
  100.             (t3_primops predicates)
  101.             (t3_primops open)
  102.             (t3_primops aliases)
  103.             (t3_primops carcdr)
  104.             (t3_primops garbage)
  105.             ))
  106.  
  107.   ;;; Z system
  108.  
  109.   ;;; The Z system depends only on the VM
  110.   (define *z-system-modules*
  111.           '((osys zread)
  112.             (osys zprint)
  113.             (osys zeval)
  114.             (osys zload)          ; not neaded if loader is not present
  115.             (osys zsystem)))
  116.  
  117.   (define *bootstrap-z-system*
  118.     (append *vm-modules*
  119.             *z-system-modules*))
  120.  
  121.   ;;; Garbage collector, scanner, suspender
  122.  
  123.   (define *garbage-collector*
  124.           '((osys scanner)
  125.         ;    (osys gc_auxiliary)
  126.         ;    (osys suspender)
  127.             (osys aegis_gc)
  128.             (osys gc_weak)
  129.             (osys gc)
  130.             (osys gc_top)
  131.             ))
  132.  
  133.   ;;; Loader
  134.   ;;; Storage management must be present in order to use the loader.
  135.  
  136.   (define *loader-modules*
  137.           '((osys dump_codes)
  138.             (osys retrieve)
  139. ;            (osys old_retrieve) ;++ flush later
  140.             (osys m68_comex)
  141. ;            (osys aegis_foreign)
  142.             (osys load_comex)
  143.             ))             ; this could come later
  144.  
  145.   (define *operation-dispatch-modules*
  146.         '(
  147.           (osys condition)    ; Exceptions
  148.           (osys location)
  149.           ))
  150.  
  151.   (define *ZVM-system*     ; VM with Z system
  152.     (append
  153.             *vm-modules*
  154.             *z-system-modules*
  155.             *garbage-collector*
  156.             *loader-modules*
  157.             *operation-dispatch-modules*
  158.             '((osys aegis)
  159.               (osys z_undefined))
  160.             ))
  161.  
  162.  
  163.  
  164.   (define *VM-system*      ; VM as a runtime library
  165.     (append
  166.             *vm-modules*
  167.             *garbage-collector*
  168.             *loader-modules*))
  169.  
  170.   ;;; Object and operation stuff
  171.  
  172.  
  173.   ;;; Arithmetic - the order of arithmetic modules is important
  174.  
  175.   (define *arithmetic-modules*
  176.           '((osys ratio)
  177.             (osys aegis_float)
  178.             (osys ieee_float)    
  179.             (osys arith)
  180.             (osys m68_bignum)
  181.             (osys big_fixnum)
  182.             (osys big_util)
  183.             (osys bignum)
  184.             (osys big_arith)
  185.             (osys dispatch)
  186.             (osys random)
  187.             (osys equality)
  188.             ;(osys single_float)
  189.             ;(osys double-float)
  190.             ;(osys complex)
  191.             ))
  192.  
  193.   (define *file-system-modules*
  194.         '(
  195.          (osys port)
  196.          (osys aegis_port)
  197.          (osys sort)
  198.          (osys herald)
  199.          (osys load)
  200.          (osys dump)
  201.          (osys dump_comex)
  202.          ))
  203.  
  204.  
  205.   ;; Syntax system
  206.   (define *syntax-system-modules*
  207.           '(
  208.             (osys syntax)
  209.             (osys pattern)
  210.             (osys sp_form)
  211.             (osys macros)        ; ENV calls MAKE-TABLE which calls GC_STAMP
  212.             (osys cond)
  213.             (osys let)
  214.             (osys quasiquote)
  215.             (osys object)       ; object macro
  216.             (osys modify)
  217.             ))
  218.  
  219.   (define *t-repl-modules*
  220.       '((osys readtable)
  221.         (osys recognize)
  222.         (osys read)
  223.         (osys sym_printer)
  224.         (osys format)
  225.         (osys pfloat)
  226.         (osys eval)
  227.         (osys repl)
  228.         (osys fs_parse)
  229.         (osys fs)
  230.         (osys tree)
  231.         (osys sets)
  232.         (osys combinators)
  233.         (osys transcript)
  234.         (osys  exports)
  235.         (osys aegis_macro)  ; macro's for foreign calls; export's things
  236.         (osys obsolete)
  237.         (osys tsystem)
  238.         ))
  239.  
  240.  
  241.   (define *inspector-modules*
  242.       '((osys crawl)
  243.         (osys debug)
  244.         (osys trace)
  245.         (osys pp)
  246.     (osys aegis_timer)
  247.         ))
  248.  
  249.   (define *t-system*
  250.     (append
  251.             *vm-modules*
  252.             *z-system-modules*
  253.             *garbage-collector*
  254.             *loader-modules*
  255.             *operation-dispatch-modules*
  256.             '((osys aegis))
  257.             *arithmetic-modules*
  258.             *file-system-modules*
  259.             *syntax-system-modules*
  260.             *inspector-modules*
  261.             *t-repl-modules*
  262.             ))
  263.  
  264.   (define *t-modules*
  265.     (append *vm-modules*
  266.             *z-system-modules*
  267.             *garbage-collector*
  268.             *loader-modules*
  269.             *operation-dispatch-modules*
  270.             *arithmetic-modules*
  271.             *file-system-modules*
  272.             *syntax-system-modules*
  273.             *inspector-modules*
  274.             *t-repl-modules*))
  275.  
  276.  
  277.   (define *library-modules*
  278.           '(
  279.             (osys loop)
  280.             (osys for)
  281.             (osys moremaps)
  282.             ))
  283.  
  284. )
  285.